package com.bigdata

object Demo18Tuple {

  def main(args: Array[String]): Unit = {
    /**
     * 元组：固定长度集合 (String, Int, Double)
     * 元组最多只能存22个元素，定义类型的时候就是在小括号写上具体的数据类型
     * 赋值：在小括号中按照元组类型的定义，写上指定位置上的类型的值即可
     * val t2: (String, Int) = ("zs", 18)
     * 取值：可以通过下划线加上下标获取数据, 可以避免下标越界异常
     * 取第一个值：t2._1
     * 取第二个值：t2._2
     * ... max --> 22
     */
    // (String, Int)
    val t2: (String, Int) = ("zs", 18)
    println(t2._1)
    println(t2._2)

    val t3: (String, Int, Double) = new Tuple3[String, Int, Double]("ls", 20, 88.8)
    println(t3._3)

    // 键值对本质上是tuple2，tuple2有简便写法
    val tx: (String, Int) = "ww" -> 22

    println(tx._1)
    println(tx._2)

    val ty: (String, String, Int) = new Tuple3[String, String, Int]("zs", "三年二班", 10)
    println(s"姓名：${ty._1}--班级${ty._2}--人数：${ty._3}")


  }

}
